A proof of Moessner's theorem by coinduction

نویسندگان

  • Milad Niqui
  • Jan J. M. M. Rutten
چکیده

We present a coinductive proof of Moessner’s theorem. This theorem describes the construction of the stream (1,2,3, . . .) (for n≥ 1) out of the stream of positive natural numbers by repeatedly dropping and summing elements. Our formalisation consists of a direct translation of the operational description of Moessner’s procedure into the equivalence of—in essence—two functional programs. Our proof fully exploits the circularity that is implicitly present in Moessner’s procedure, and it is more elementary than existing proofs. As such, it serves as a non-trivial illustration of the relevance and power of coinduction.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Moessner's Theorem: An Exercise in Coinductive Reasoning in Coq

Moessner’s Theorem describes a construction of the sequence of powers (1, 2, 3, . . . ), by repeatedly dropping and summing elements from the sequence of positive natural numbers. The theorem was presented by Moessner in 1951 without a proof and later proved and generalized in several directions. More recently, a coinductive proof of the original theorem was given by Niqui and Rutten. We presen...

متن کامل

Concrete stream calculus: An extended study

This paper shows how to reason about streams concisely and precisely. Streams, infinite sequences of elements, live in a coworld: they are given by a coinductive datatype, operations on streams are implemented by corecursive programs, and proofs are typically concocted using coinduction. This paper offers an alternative to coinduction. Suitably restricted, stream equations possess unique soluti...

متن کامل

Scans and Convolutions - A Calculational Proof of Moessner's Theorem

The paper introduces two corecursion schemes for streamgenerating functions, scans and convolutions, and discusses their properties. As an application of the framework, a calculational proof of Paasche’s generalisation of Moessner’s intriguing theorem is presented.

متن کامل

An exercise in coinduction: Moessner’s theorem

We present a coinductive proof of Moessner’s theorem. This theorem describes the construction of the stream (1n, 2n, 3n, . . .) (for n ≥ 1) out of the stream of natural numbers by repeatedly dropping and summing elements. Our formalisation consists of a direct translation of the operational description of Moessner’s procedure into the equivalence of in essence two functional programs. Our proof...

متن کامل

Iterative Circular Coinduction for CoCasl in Isabelle/HOL

Coalgebra has in recent years been recognized as the framework of choice for the treatment of reactive systems at an appropriate level of generality. Proofs about the reactive behavior of a coalgebraic system typically rely on the method of coinduction. In comparison to ‘traditional’ coinduction, which has the disadvantage of requiring the invention of a bisimulation relation, the method of cir...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Higher-Order and Symbolic Computation

دوره 24  شماره 

صفحات  -

تاریخ انتشار 2011